/*
 * Intel ACPI Component Architecture
 * AML/ASL+ Disassembler version 20160422-64(RM)
 * Copyright (c) 2000 - 2016 Intel Corporation
 * 
 * Disassembling to non-symbolic legacy ASL operators
 *
 * Disassembly of SSDT2.aml, Sun Apr  9 10:02:57 2017
 *
 * Original Table Header:
 *     Signature        "SSDT"
 *     Length           0x00000539 (1337)
 *     Revision         0x01
 *     Checksum         0x0D
 *     OEM ID           "PmRef"
 *     OEM Table ID     "Cpu0Ist"
 *     OEM Revision     0x00003000 (12288)
 *     Compiler ID      "INTL"
 *     Compiler Version 0x20051117 (537202967)
 */
DefinitionBlock ("", "SSDT", 1, "PmRef", "Cpu0Ist", 0x00003000)
{
    External (_PR_.CFGD, FieldUnitObj)
    External (_PR_.CPPC, FieldUnitObj)
    External (_PR_.CPU0, ProcessorObj)
    External (PDC0, IntObj)
    External (TCNT, FieldUnitObj)

    Scope (\_PR.CPU0)
    {
        Name (_PPC, Zero)  // _PPC: Performance Present Capabilities
        Method (_PCT, 0, NotSerialized)  // _PCT: Performance Control
        {
            Store (\_PR.CPPC, \_PR.CPU0._PPC)
            If (LAnd (And (CFGD, One), And (PDC0, One)))
            {
                Return (Package (0x02)
                {
                    ResourceTemplate ()
                    {
                        Register (FFixedHW,
                            0x00,               // Bit Width
                            0x00,               // Bit Offset
                            0x0000000000000000, // Address
                            ,)
                    },

                    ResourceTemplate ()
                    {
                        Register (FFixedHW,
                            0x00,               // Bit Width
                            0x00,               // Bit Offset
                            0x0000000000000000, // Address
                            ,)
                    }
                })
            }
        }

        Name (_PSS, Package (0x10)  // _PSS: Performance Supported States
        {
            Package (0x06)
            {
                0x00000E11,
                0x00014820,
                0x0000000A,
                0x0000000A,
                0x00002800,
                0x00002800
            },

            Package (0x06)
            {
                0x00000E10,
                0x00014820,
                0x0000000A,
                0x0000000A,
                0x00002400,
                0x00002400
            },

            Package (0x06)
            {
                0x00000D48,
                0x00012D71,
                0x0000000A,
                0x0000000A,
                0x00002200,
                0x00002200
            },

            Package (0x06)
            {
                0x00000C80,
                0x000113BB,
                0x0000000A,
                0x0000000A,
                0x00002000,
                0x00002000
            },

            Package (0x06)
            {
                0x00000BB8,
                0x0000FE16,
                0x0000000A,
                0x0000000A,
                0x00001E00,
                0x00001E00
            },

            Package (0x06)
            {
                0x00000AF0,
                0x0000E630,
                0x0000000A,
                0x0000000A,
                0x00001C00,
                0x00001C00
            },

            Package (0x06)
            {
                0x00000A28,
                0x0000D221,
                0x0000000A,
                0x0000000A,
                0x00001A00,
                0x00001A00
            },

            Package (0x06)
            {
                0x00000960,
                0x0000BC07,
                0x0000000A,
                0x0000000A,
                0x00001800,
                0x00001800
            },

            Package (0x06)
            {
                0x00000898,
                0x0000A98F,
                0x0000000A,
                0x0000000A,
                0x00001600,
                0x00001600
            },

            Package (0x06)
            {
                0x000007D0,
                0x0000951E,
                0x0000000A,
                0x0000000A,
                0x00001400,
                0x00001400
            },

            Package (0x06)
            {
                0x00000708,
                0x00008436,
                0x0000000A,
                0x0000000A,
                0x00001200,
                0x00001200
            },

            Package (0x06)
            {
                0x00000640,
                0x00007169,
                0x0000000A,
                0x0000000A,
                0x00001000,
                0x00001000
            },

            Package (0x06)
            {
                0x00000578,
                0x00005F76,
                0x0000000A,
                0x0000000A,
                0x00000E00,
                0x00000E00
            },

            Package (0x06)
            {
                0x000004B0,
                0x000050C1,
                0x0000000A,
                0x0000000A,
                0x00000C00,
                0x00000C00
            },

            Package (0x06)
            {
                0x000003E8,
                0x00004057,
                0x0000000A,
                0x0000000A,
                0x00000A00,
                0x00000A00
            },

            Package (0x06)
            {
                0x00000320,
                0x0000330B,
                0x0000000A,
                0x0000000A,
                0x00000800,
                0x00000800
            }
        })
//        Package (0x06)
//        {
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000
//        }

//        Package (0x06)
//        {
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000
//        }

//        Package (0x06)
//        {
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000
//        }

//        Package (0x06)
//        {
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000
//        }

//        Package (0x06)
//        {
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000
//        }

//        Package (0x06)
//        {
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000
//        }

//        Package (0x06)
//        {
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000
//        }

//        Package (0x06)
//        {
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000
//        }

//        Package (0x06)
//        {
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000
//        }

//        Package (0x06)
//        {
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000
//        }

//        Package (0x06)
//        {
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000
//        }

//        Package (0x06)
//        {
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000
//        }

//        Package (0x06)
//        {
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000
//        }

//        Package (0x06)
//        {
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000
//        }

//        Package (0x06)
//        {
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000
//        }

//        Package (0x06)
//        {
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000,
//            0x80000000
//        }

        Name (PSDF, Zero)
        Method (_PSD, 0, NotSerialized)  // _PSD: Power State Dependencies
        {
            If (LNot (PSDF))
            {
                Store (TCNT, Index (DerefOf (Index (HPSD, Zero)), 0x04))
                Store (TCNT, Index (DerefOf (Index (SPSD, Zero)), 0x04))
                Store (Ones, PSDF)
            }

            If (And (PDC0, 0x0800))
            {
                Return (HPSD)
            }

            Return (SPSD)
        }

        Name (HPSD, Package (0x01)
        {
            Package (0x05)
            {
                0x05,
                Zero,
                Zero,
                0xFE,
                0x80
            }
        })
        Name (SPSD, Package (0x01)
        {
            Package (0x05)
            {
                0x05,
                Zero,
                Zero,
                0xFC,
                0x80
            }
        })
    }
}

